DB Definitions allow you to "describe" the structure of your data to the Flow application. This allows Flow to understand your particular data structure and read and write to it. This gives you the flexibility to interact with any data structure as you are in complete control over the definition. A data definition can be changed easily by you as your data structure changes as a result of system upgrades and customisation.
A Data Definition is an in-memory representation of the data you are going to read or write. When reading data the definition is opened against the data structure and data read from the structure into memory. The data is retained in memory until the definition is closed.
When writing data the definition is opened against the structure but no data is read. This provides an in-memory representation of what the data structure is. You then write data into the definition using a map, and this is subsequently converted to the appropriate format when writing the data into the structure. Even after writing the data, the data is retained in memory until the definition is closed.
There are three types of Data Definitions;
DB Definitions can be used to describe a data structure stored within a SQL database.
File Definitions can be used to describe Flat Files, XML Files, and EDI Files. Flat Files are any structured text file either fixed length or delimited. XML Files are any XML based file that can be described using XML Schema (XSD). EDI Files are any UN/EDIFACT or ANSI based files.
Web Definitions an be used to describe a data structure provided by a web service.